package org.xtext.example.mydsl.parser.antlr.internal; 

import org.eclipse.xtext.*;
import org.eclipse.xtext.parser.*;
import org.eclipse.xtext.parser.impl.*;
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.xtext.parser.antlr.AbstractInternalAntlrParser;
import org.eclipse.xtext.parser.antlr.XtextTokenStream;
import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens;
import org.eclipse.xtext.parser.antlr.AntlrDatatypeRuleToken;
import org.xtext.example.mydsl.services.MyDslGrammarAccess;



import org.antlr.runtime.*;
import java.util.Stack;
import java.util.List;
import java.util.ArrayList;

@SuppressWarnings("all")
public class InternalMyDslParser extends AbstractInternalAntlrParser {
    public static final String[] tokenNames = new String[] {
        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_ID", "RULE_INT", "RULE_STRING", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'Simple'", "'Semi'", "'Exclusiva'", "'Proyector'", "'Internet'"
    };
    public static final int RULE_ID=4;
    public static final int RULE_STRING=6;
    public static final int T__15=15;
    public static final int T__12=12;
    public static final int T__11=11;
    public static final int T__14=14;
    public static final int T__13=13;
    public static final int RULE_ANY_OTHER=10;
    public static final int RULE_INT=5;
    public static final int RULE_WS=9;
    public static final int RULE_SL_COMMENT=8;
    public static final int EOF=-1;
    public static final int RULE_ML_COMMENT=7;

    // delegates
    // delegators


        public InternalMyDslParser(TokenStream input) {
            this(input, new RecognizerSharedState());
        }
        public InternalMyDslParser(TokenStream input, RecognizerSharedState state) {
            super(input, state);
             
        }
        

    public String[] getTokenNames() { return InternalMyDslParser.tokenNames; }
    public String getGrammarFileName() { return "../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g"; }



     	private MyDslGrammarAccess grammarAccess;
     	
        public InternalMyDslParser(TokenStream input, MyDslGrammarAccess grammarAccess) {
            this(input);
            this.grammarAccess = grammarAccess;
            registerRules(grammarAccess.getGrammar());
        }
        
        @Override
        protected String getFirstRuleName() {
        	return "Dedicacion";	
       	}
       	
       	@Override
       	protected MyDslGrammarAccess getGrammarAccess() {
       		return grammarAccess;
       	}



    // $ANTLR start "entryRuleDedicacion"
    // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:67:1: entryRuleDedicacion returns [EObject current=null] : iv_ruleDedicacion= ruleDedicacion EOF ;
    public final EObject entryRuleDedicacion() throws RecognitionException {
        EObject current = null;

        EObject iv_ruleDedicacion = null;


        try {
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:68:2: (iv_ruleDedicacion= ruleDedicacion EOF )
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:69:2: iv_ruleDedicacion= ruleDedicacion EOF
            {
             newCompositeNode(grammarAccess.getDedicacionRule()); 
            pushFollow(FOLLOW_ruleDedicacion_in_entryRuleDedicacion75);
            iv_ruleDedicacion=ruleDedicacion();

            state._fsp--;

             current =iv_ruleDedicacion; 
            match(input,EOF,FOLLOW_EOF_in_entryRuleDedicacion85); 

            }

        }
         
            catch (RecognitionException re) { 
                recover(input,re); 
                appendSkippedTokens();
            } 
        finally {
        }
        return current;
    }
    // $ANTLR end "entryRuleDedicacion"


    // $ANTLR start "ruleDedicacion"
    // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:76:1: ruleDedicacion returns [EObject current=null] : (this_Simple_0= ruleSimple | this_Semi_1= ruleSemi | this_Exclusiva_2= ruleExclusiva ) ;
    public final EObject ruleDedicacion() throws RecognitionException {
        EObject current = null;

        EObject this_Simple_0 = null;

        EObject this_Semi_1 = null;

        EObject this_Exclusiva_2 = null;


         enterRule(); 
            
        try {
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:79:28: ( (this_Simple_0= ruleSimple | this_Semi_1= ruleSemi | this_Exclusiva_2= ruleExclusiva ) )
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:80:1: (this_Simple_0= ruleSimple | this_Semi_1= ruleSemi | this_Exclusiva_2= ruleExclusiva )
            {
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:80:1: (this_Simple_0= ruleSimple | this_Semi_1= ruleSemi | this_Exclusiva_2= ruleExclusiva )
            int alt1=3;
            switch ( input.LA(1) ) {
            case 11:
                {
                alt1=1;
                }
                break;
            case 12:
                {
                alt1=2;
                }
                break;
            case 13:
                {
                alt1=3;
                }
                break;
            default:
                NoViableAltException nvae =
                    new NoViableAltException("", 1, 0, input);

                throw nvae;
            }

            switch (alt1) {
                case 1 :
                    // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:81:5: this_Simple_0= ruleSimple
                    {
                     
                            newCompositeNode(grammarAccess.getDedicacionAccess().getSimpleParserRuleCall_0()); 
                        
                    pushFollow(FOLLOW_ruleSimple_in_ruleDedicacion132);
                    this_Simple_0=ruleSimple();

                    state._fsp--;

                     
                            current = this_Simple_0; 
                            afterParserOrEnumRuleCall();
                        

                    }
                    break;
                case 2 :
                    // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:91:5: this_Semi_1= ruleSemi
                    {
                     
                            newCompositeNode(grammarAccess.getDedicacionAccess().getSemiParserRuleCall_1()); 
                        
                    pushFollow(FOLLOW_ruleSemi_in_ruleDedicacion159);
                    this_Semi_1=ruleSemi();

                    state._fsp--;

                     
                            current = this_Semi_1; 
                            afterParserOrEnumRuleCall();
                        

                    }
                    break;
                case 3 :
                    // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:101:5: this_Exclusiva_2= ruleExclusiva
                    {
                     
                            newCompositeNode(grammarAccess.getDedicacionAccess().getExclusivaParserRuleCall_2()); 
                        
                    pushFollow(FOLLOW_ruleExclusiva_in_ruleDedicacion186);
                    this_Exclusiva_2=ruleExclusiva();

                    state._fsp--;

                     
                            current = this_Exclusiva_2; 
                            afterParserOrEnumRuleCall();
                        

                    }
                    break;

            }


            }

             leaveRule(); 
        }
         
            catch (RecognitionException re) { 
                recover(input,re); 
                appendSkippedTokens();
            } 
        finally {
        }
        return current;
    }
    // $ANTLR end "ruleDedicacion"


    // $ANTLR start "entryRuleSimple"
    // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:117:1: entryRuleSimple returns [EObject current=null] : iv_ruleSimple= ruleSimple EOF ;
    public final EObject entryRuleSimple() throws RecognitionException {
        EObject current = null;

        EObject iv_ruleSimple = null;


        try {
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:118:2: (iv_ruleSimple= ruleSimple EOF )
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:119:2: iv_ruleSimple= ruleSimple EOF
            {
             newCompositeNode(grammarAccess.getSimpleRule()); 
            pushFollow(FOLLOW_ruleSimple_in_entryRuleSimple221);
            iv_ruleSimple=ruleSimple();

            state._fsp--;

             current =iv_ruleSimple; 
            match(input,EOF,FOLLOW_EOF_in_entryRuleSimple231); 

            }

        }
         
            catch (RecognitionException re) { 
                recover(input,re); 
                appendSkippedTokens();
            } 
        finally {
        }
        return current;
    }
    // $ANTLR end "entryRuleSimple"


    // $ANTLR start "ruleSimple"
    // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:126:1: ruleSimple returns [EObject current=null] : ( (lv_name_0_0= 'Simple' ) ) ;
    public final EObject ruleSimple() throws RecognitionException {
        EObject current = null;

        Token lv_name_0_0=null;

         enterRule(); 
            
        try {
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:129:28: ( ( (lv_name_0_0= 'Simple' ) ) )
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:130:1: ( (lv_name_0_0= 'Simple' ) )
            {
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:130:1: ( (lv_name_0_0= 'Simple' ) )
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:131:1: (lv_name_0_0= 'Simple' )
            {
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:131:1: (lv_name_0_0= 'Simple' )
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:132:3: lv_name_0_0= 'Simple'
            {
            lv_name_0_0=(Token)match(input,11,FOLLOW_11_in_ruleSimple273); 

                    newLeafNode(lv_name_0_0, grammarAccess.getSimpleAccess().getNameSimpleKeyword_0());
                

            	        if (current==null) {
            	            current = createModelElement(grammarAccess.getSimpleRule());
            	        }
                   		setWithLastConsumed(current, "name", lv_name_0_0, "Simple");
            	    

            }


            }


            }

             leaveRule(); 
        }
         
            catch (RecognitionException re) { 
                recover(input,re); 
                appendSkippedTokens();
            } 
        finally {
        }
        return current;
    }
    // $ANTLR end "ruleSimple"


    // $ANTLR start "entryRuleSemi"
    // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:153:1: entryRuleSemi returns [EObject current=null] : iv_ruleSemi= ruleSemi EOF ;
    public final EObject entryRuleSemi() throws RecognitionException {
        EObject current = null;

        EObject iv_ruleSemi = null;


        try {
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:154:2: (iv_ruleSemi= ruleSemi EOF )
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:155:2: iv_ruleSemi= ruleSemi EOF
            {
             newCompositeNode(grammarAccess.getSemiRule()); 
            pushFollow(FOLLOW_ruleSemi_in_entryRuleSemi321);
            iv_ruleSemi=ruleSemi();

            state._fsp--;

             current =iv_ruleSemi; 
            match(input,EOF,FOLLOW_EOF_in_entryRuleSemi331); 

            }

        }
         
            catch (RecognitionException re) { 
                recover(input,re); 
                appendSkippedTokens();
            } 
        finally {
        }
        return current;
    }
    // $ANTLR end "entryRuleSemi"


    // $ANTLR start "ruleSemi"
    // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:162:1: ruleSemi returns [EObject current=null] : ( (lv_name_0_0= 'Semi' ) ) ;
    public final EObject ruleSemi() throws RecognitionException {
        EObject current = null;

        Token lv_name_0_0=null;

         enterRule(); 
            
        try {
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:165:28: ( ( (lv_name_0_0= 'Semi' ) ) )
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:166:1: ( (lv_name_0_0= 'Semi' ) )
            {
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:166:1: ( (lv_name_0_0= 'Semi' ) )
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:167:1: (lv_name_0_0= 'Semi' )
            {
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:167:1: (lv_name_0_0= 'Semi' )
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:168:3: lv_name_0_0= 'Semi'
            {
            lv_name_0_0=(Token)match(input,12,FOLLOW_12_in_ruleSemi373); 

                    newLeafNode(lv_name_0_0, grammarAccess.getSemiAccess().getNameSemiKeyword_0());
                

            	        if (current==null) {
            	            current = createModelElement(grammarAccess.getSemiRule());
            	        }
                   		setWithLastConsumed(current, "name", lv_name_0_0, "Semi");
            	    

            }


            }


            }

             leaveRule(); 
        }
         
            catch (RecognitionException re) { 
                recover(input,re); 
                appendSkippedTokens();
            } 
        finally {
        }
        return current;
    }
    // $ANTLR end "ruleSemi"


    // $ANTLR start "entryRuleExclusiva"
    // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:189:1: entryRuleExclusiva returns [EObject current=null] : iv_ruleExclusiva= ruleExclusiva EOF ;
    public final EObject entryRuleExclusiva() throws RecognitionException {
        EObject current = null;

        EObject iv_ruleExclusiva = null;


        try {
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:190:2: (iv_ruleExclusiva= ruleExclusiva EOF )
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:191:2: iv_ruleExclusiva= ruleExclusiva EOF
            {
             newCompositeNode(grammarAccess.getExclusivaRule()); 
            pushFollow(FOLLOW_ruleExclusiva_in_entryRuleExclusiva421);
            iv_ruleExclusiva=ruleExclusiva();

            state._fsp--;

             current =iv_ruleExclusiva; 
            match(input,EOF,FOLLOW_EOF_in_entryRuleExclusiva431); 

            }

        }
         
            catch (RecognitionException re) { 
                recover(input,re); 
                appendSkippedTokens();
            } 
        finally {
        }
        return current;
    }
    // $ANTLR end "entryRuleExclusiva"


    // $ANTLR start "ruleExclusiva"
    // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:198:1: ruleExclusiva returns [EObject current=null] : ( (lv_name_0_0= 'Exclusiva' ) ) ;
    public final EObject ruleExclusiva() throws RecognitionException {
        EObject current = null;

        Token lv_name_0_0=null;

         enterRule(); 
            
        try {
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:201:28: ( ( (lv_name_0_0= 'Exclusiva' ) ) )
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:202:1: ( (lv_name_0_0= 'Exclusiva' ) )
            {
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:202:1: ( (lv_name_0_0= 'Exclusiva' ) )
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:203:1: (lv_name_0_0= 'Exclusiva' )
            {
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:203:1: (lv_name_0_0= 'Exclusiva' )
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:204:3: lv_name_0_0= 'Exclusiva'
            {
            lv_name_0_0=(Token)match(input,13,FOLLOW_13_in_ruleExclusiva473); 

                    newLeafNode(lv_name_0_0, grammarAccess.getExclusivaAccess().getNameExclusivaKeyword_0());
                

            	        if (current==null) {
            	            current = createModelElement(grammarAccess.getExclusivaRule());
            	        }
                   		setWithLastConsumed(current, "name", lv_name_0_0, "Exclusiva");
            	    

            }


            }


            }

             leaveRule(); 
        }
         
            catch (RecognitionException re) { 
                recover(input,re); 
                appendSkippedTokens();
            } 
        finally {
        }
        return current;
    }
    // $ANTLR end "ruleExclusiva"


    // $ANTLR start "entryRuleProyector"
    // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:227:1: entryRuleProyector returns [EObject current=null] : iv_ruleProyector= ruleProyector EOF ;
    public final EObject entryRuleProyector() throws RecognitionException {
        EObject current = null;

        EObject iv_ruleProyector = null;


        try {
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:228:2: (iv_ruleProyector= ruleProyector EOF )
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:229:2: iv_ruleProyector= ruleProyector EOF
            {
             newCompositeNode(grammarAccess.getProyectorRule()); 
            pushFollow(FOLLOW_ruleProyector_in_entryRuleProyector523);
            iv_ruleProyector=ruleProyector();

            state._fsp--;

             current =iv_ruleProyector; 
            match(input,EOF,FOLLOW_EOF_in_entryRuleProyector533); 

            }

        }
         
            catch (RecognitionException re) { 
                recover(input,re); 
                appendSkippedTokens();
            } 
        finally {
        }
        return current;
    }
    // $ANTLR end "entryRuleProyector"


    // $ANTLR start "ruleProyector"
    // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:236:1: ruleProyector returns [EObject current=null] : ( (lv_name_0_0= 'Proyector' ) ) ;
    public final EObject ruleProyector() throws RecognitionException {
        EObject current = null;

        Token lv_name_0_0=null;

         enterRule(); 
            
        try {
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:239:28: ( ( (lv_name_0_0= 'Proyector' ) ) )
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:240:1: ( (lv_name_0_0= 'Proyector' ) )
            {
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:240:1: ( (lv_name_0_0= 'Proyector' ) )
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:241:1: (lv_name_0_0= 'Proyector' )
            {
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:241:1: (lv_name_0_0= 'Proyector' )
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:242:3: lv_name_0_0= 'Proyector'
            {
            lv_name_0_0=(Token)match(input,14,FOLLOW_14_in_ruleProyector575); 

                    newLeafNode(lv_name_0_0, grammarAccess.getProyectorAccess().getNameProyectorKeyword_0());
                

            	        if (current==null) {
            	            current = createModelElement(grammarAccess.getProyectorRule());
            	        }
                   		setWithLastConsumed(current, "name", lv_name_0_0, "Proyector");
            	    

            }


            }


            }

             leaveRule(); 
        }
         
            catch (RecognitionException re) { 
                recover(input,re); 
                appendSkippedTokens();
            } 
        finally {
        }
        return current;
    }
    // $ANTLR end "ruleProyector"


    // $ANTLR start "entryRuleInternet"
    // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:263:1: entryRuleInternet returns [EObject current=null] : iv_ruleInternet= ruleInternet EOF ;
    public final EObject entryRuleInternet() throws RecognitionException {
        EObject current = null;

        EObject iv_ruleInternet = null;


        try {
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:264:2: (iv_ruleInternet= ruleInternet EOF )
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:265:2: iv_ruleInternet= ruleInternet EOF
            {
             newCompositeNode(grammarAccess.getInternetRule()); 
            pushFollow(FOLLOW_ruleInternet_in_entryRuleInternet623);
            iv_ruleInternet=ruleInternet();

            state._fsp--;

             current =iv_ruleInternet; 
            match(input,EOF,FOLLOW_EOF_in_entryRuleInternet633); 

            }

        }
         
            catch (RecognitionException re) { 
                recover(input,re); 
                appendSkippedTokens();
            } 
        finally {
        }
        return current;
    }
    // $ANTLR end "entryRuleInternet"


    // $ANTLR start "ruleInternet"
    // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:272:1: ruleInternet returns [EObject current=null] : ( (lv_name_0_0= 'Internet' ) ) ;
    public final EObject ruleInternet() throws RecognitionException {
        EObject current = null;

        Token lv_name_0_0=null;

         enterRule(); 
            
        try {
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:275:28: ( ( (lv_name_0_0= 'Internet' ) ) )
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:276:1: ( (lv_name_0_0= 'Internet' ) )
            {
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:276:1: ( (lv_name_0_0= 'Internet' ) )
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:277:1: (lv_name_0_0= 'Internet' )
            {
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:277:1: (lv_name_0_0= 'Internet' )
            // ../salamin/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDsl.g:278:3: lv_name_0_0= 'Internet'
            {
            lv_name_0_0=(Token)match(input,15,FOLLOW_15_in_ruleInternet675); 

                    newLeafNode(lv_name_0_0, grammarAccess.getInternetAccess().getNameInternetKeyword_0());
                

            	        if (current==null) {
            	            current = createModelElement(grammarAccess.getInternetRule());
            	        }
                   		setWithLastConsumed(current, "name", lv_name_0_0, "Internet");
            	    

            }


            }


            }

             leaveRule(); 
        }
         
            catch (RecognitionException re) { 
                recover(input,re); 
                appendSkippedTokens();
            } 
        finally {
        }
        return current;
    }
    // $ANTLR end "ruleInternet"

    // Delegated rules


 

    public static final BitSet FOLLOW_ruleDedicacion_in_entryRuleDedicacion75 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleDedicacion85 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSimple_in_ruleDedicacion132 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSemi_in_ruleDedicacion159 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleExclusiva_in_ruleDedicacion186 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSimple_in_entryRuleSimple221 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleSimple231 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_11_in_ruleSimple273 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSemi_in_entryRuleSemi321 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleSemi331 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_12_in_ruleSemi373 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleExclusiva_in_entryRuleExclusiva421 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleExclusiva431 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_13_in_ruleExclusiva473 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleProyector_in_entryRuleProyector523 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleProyector533 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_14_in_ruleProyector575 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleInternet_in_entryRuleInternet623 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleInternet633 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_15_in_ruleInternet675 = new BitSet(new long[]{0x0000000000000002L});

}